Integrated headset controller storage and connection

ABSTRACT

A controller for providing inputs to an interactive application includes a first surface with a pair of slots to store earbuds, a plurality of control buttons and touch input surfaces defined on one or more surfaces including the first surface. A processor is configured to pair the controller to a computing device executing the interactive application and is coupled to each of the slots so as to pair the earbuds received therein to the controller and to share the pairing between the controller and the computing device with the earbuds received in the pair of slots.

TECHNICAL FIELD

The present disclosure relates to a controller used to provide input toan interactive application and more particularly to a controller thatprovides storage, charging, and connection case for in-ear headphones.

BACKGROUND OF THE DISCLOSURE

Video games have grown in popularity over recent years. With the growingpopularity of the video games, various input/output devices have beendeveloped to assist the users in interacting with the video games (i.e.,interactive applications). For example, gaming controllers weredeveloped to assist the users in providing inputs to the video games andto receive feedback responses. Head-mounted display with display screenswere developed and provided to allow the users to have immersive,private and non-intrusive gaming experience. Headphones (in-earheadphones as well as external headphones) were developed and providedto allow the users to listen to audio of the video games and to interactwith other users within and outside of the video game, etc. The in-earheadphones (i.e., earbuds), for example, can be wired or wireless. Thewireless earbuds provide a small and portable form factor for listeningto both in-game and external audio during gameplay of a video game. Theearbuds are stored in a separate case and charged via electricalcoupling provided in the case. To allow use of the various input/outputdevices for providing inputs and receiving outputs, the various deviceshave to be paired to a gaming device.

As more and more input/output devices are made available to users, usersare burdened with managing the pairing, storing, and charging of thesedevices. Managing the various input/output devices is time consuming andinvolved process. For example, in the current setup, users need tomanage two separate pairing processes (i.e., for pairing both thecontroller and the earbuds) to successfully pair the earbuds and thecontroller to a gaming device. The gaming device is used to execute thevideo game using user inputs provided through the input/output devicesand to provide game content for rendering on a display screen of aclient device of each user. In addition to performing two separatepairing processes, the users also have to keep track of two separatebattery life statuses in order to ensure the earbuds, the case of theearbuds, and the controller are charged and ready for gameplay.Additionally, the locations of the earbuds and the controller have to betracked at all times. As portability and gaming anywhere becomes moreand more mainstream and important, the audio experience also becomesequally important.

It is in this context that embodiments of the disclosure arise.

SUMMARY

Implementations of the present disclosure relate to devices, systems andmethods for storing, charging and pairing in-ear headphones (i.e.,earbuds) to a controller used in providing inputs to a video game. Thecontroller is paired to a gaming device, such as a gaming console or agaming server that executes interactive application, such as the videogame. The controller is designed to act both as an input device and as aheadphone storage, charging, and connection case. Using the controlleras a headphone case and an earbud charger eliminates the need to managetwo separate devices. This simplifies the overall user experience as theuser has one less device to manage communication with the gaming device.Using the controller for audio storage (i.e., earbud storage) andintegrating earbuds into the controller itself provides a proprietarylow-latency audio connection to the gaming device, charging space withinthe controller, and provides the ability to switch to the built-inbattery or power source of the controller when the internal power source(e.g., battery) of the earbuds runs out of power.

Further, using the controller as an earbud case, communication betweenthe two devices (earbuds and the controller) is greatly simplified,thereby allowing for greater opportunity for the earbuds and thecontroller to work together. With two different audio sources availableat the controller, the user is provided with greater flexibility todirect specific ones of the audio through each microphone source. Inaddition to simplifying the pairing, storing and charging of theearbuds, the microphone/speaker of the controller can be used with theearbuds to triangulate the audio source so that the audio can beprocessed to provide better audio quality. For example, thetriangulation of the audio source can be used to precisely identify andcancel extraneous noise and for selective filtering out of certain onesof the ambient sounds and enhancing certain other ones of the ambientsounds.

In one implementation, a controller to provide inputs to an interactiveapplication is disclosed. The controller includes a first surface with apair of slots defined thereon. Each slot of the pair of slots isconfigured to store an earbud. Each slot is coupled to a power source ofthe controller to charge said earbud when the earbud is received in eachslot of said pair of slots. The controller also includes a plurality ofcontrol buttons and one or more touch input surfaces defined on one ormore surfaces, including the first surface. Each of the plurality ofcontrol buttons and each of the one or more touch input surfaces isconfigured to provide an input for performing an action in theinteractive application. A processor is configured to pair thecontroller to a computing device executing the interactive application.The processor is also coupled to each of the slots so as to pair theearbuds received therein to the controller and to share the pairingbetween the controller and the computing device with the earbudsreceived in the pair of slots.

Other aspects and advantages of the disclosure will become apparent fromthe following detailed description, taken in conjunction with theaccompanying drawings, illustrating by way of example the principles ofthe disclosure.

BRIEF DESCRIPTION OF THE DRAWINGS

The disclosure may best be understood by reference to the followingdescription taken in conjunction with the accompanying drawings.

FIG. 1 illustrates a simplified block diagram of a gaming system with acontroller having an earbud storage to store and charge the earbudsreceived therein, and to share the pairing of the controller to acomputing device to communicate with the computing device, in accordancewith one implementation of the present disclosure.

FIG. 2A illustrates a simplified block diagram of an earbud setup moduleused for charging the earbuds, pairing the earbuds to the controller andto communicate with computing device, such as a gaming device, inaccordance with one implementation of the present disclosure.

FIG. 2B illustrates a simplified block diagram of various modulesincluded in a content streaming configuration module of FIG. 2A, in oneimplementation.

FIG. 3A illustrates a view of a back side of the controller on which anearbud case for receiving and storing earbuds is defined thereon, inaccordance with one implementation of the present disclosure.

FIG. 3B illustrates a front side of the controller on which a pluralityof buttons and an input interface are defined, in accordance with oneimplementation of the present disclosure.

FIG. 3C illustrates an alternate configuration of the earbud storagedefined on the back side of the controller that is different than theconfiguration shown in FIG. 3A, in accordance with one implementation ofthe present disclosure.

FIG. 3D illustrates another alternate configuration of the earbudstorage defined on the back side of the controller that is differentthan the configurations shown in FIGS. 3A and 3C, in accordance with oneimplementation of the present disclosure.

FIG. 3E illustrates a different configuration of the earbud storagedefined on the back side of the controller that is different than theconfigurations shown in FIGS. 3A, 3C and 3D, in accordance with oneimplementation of the present disclosure.

DETAILED DESCRIPTION

In the following description, numerous specific details are set forth inorder to provide a thorough understanding of the present disclosure. Itwill be apparent, however, to one skilled in the art that the presentdisclosure may be practiced without some or all of these specificdetails. In other instances, well known process steps have not beendescribed in detail in order not to obscure the present disclosure.

As portability and gaming anywhere becomes mainstream and important, sodoes the audio experience using microphones paired with a computingdevice (e.g., game console or gaming server). The computing device usedfor executing an interactive application, such as a video game, isassociated with one or more input devices to allow a user to provideinput to the video game. Some of the input devices available forproviding inputs (e.g., control inputs) include keyboard, mouse, gamingcontroller (simply referred to as a “controller”), tablet computingdevice with touch screen or an emulated controller, a mobile computingdevice, etc. In addition to the aforementioned input devices forproviding control inputs, voice inputs (e.g., commands) may be providedusing microphones of the controller, microphones associated with adisplay screen/computing device or microphones associated with a pair ofearbuds. The inputs are used to update a game state of the video gameand game related content corresponding to the game state is generatedand provided for rendering. Game related content of the video gameincludes game content and social interaction content, such as chatcontent. The game content further includes video content, hapticcontent, audio content, etc. The video content is forwarded to a displayscreen associated with the computing device or a head mounted display,or to a television monitor or a display surface for rendering. The audiocontent is forwarded to the controller for rendering via speaker(s) ofthe controller, or to a pair of earbuds that are communicatively pairedto the computing device for rendering via the speakers of the earbuds.

In various implementations described herein, the pair of earbuds isintegrally stored in an earbud case defined on a surface of thecontroller. This allows the earbuds to, (a) share a power source used tocharge the controller, (b) communicate with the computing device using acommunication connection established from the pairing of the controllerto the computing device; (c) provide a proprietary low-latency audioconnection between the earbuds and the computing device; (d) providegreater flexibility to configure the earbuds to selectively receivedifferent audio content; (e) simplify the pairing of the earbuds to thecomputing device; (f) simplify the gaming-centric headset storage byreducing number of devices to track; (g) simplify the communicationbetween the microphones/speakers of the earbuds and the controller.

With the general understanding of the disclosure, specific details ofthe disclosure will now be described with reference to the variousfigures.

FIG. 1 illustrates a simplified block diagram of a system that is usedto execute an interactive application, such as a video game, and providecontent of the interactive application to one or more client devices forrendering, in one implementation. The system shown in FIG. 1 shows agaming system in which a controller 110 is used to provide user inputsto an interactive application (e.g., the video game) executing on acomputing device 100. The system shown in FIG. 1 has been deliberatelykept simple and basic in order to understand the advantages of thedisclosure described herein. The system, as shown, includes thecomputing device 100 (represented as a gaming console), a display screen115, a controller 110, and a pair of earbuds 120. In the implementationof FIG. 1 , the computing device 100 is shown to be co-located with theuser 10 providing input through the controller 110. The computing device100 does not have to be co-located but can also be remotely located. Thecomputing device 100 is communicatively connected to the controller 110by performing a pairing process so as to receive user input providedthrough the controller 110 and return video game content for renderingon the display screen 115. Throughout this application, the controllermay be alternatively referred to as a “client device”.

The computing device 100 is not restricted to a stand-alone gamingconsole but can be a connected device, such as a thin client, or a localserver device that is communicatively connected to a remote server, suchas a cloud server 400 of a game cloud, or can be a remotely locatedcloud server that is part of the game cloud. In some implementationswhere the computing device 100 is connected to the cloud server 400, afirst portion of the video game may be executed on the computing device100 and a second portion of the video game may be executed on the cloudserver 400. In these implementations, some of the input from thecontroller 110 to the video game and some of the game content generatedfor the video game are processed at the computing device 100 and theremaining portion of the input and the game content are processed at thecloud server 400. In such cases, the game state of the video game issynchronized between the computing device 100 and the cloud server 400.In the implementations where the computing device 100 is a thin clientthat is communicatively connected to the cloud server, the computingdevice 100 only acts as an intermediary to transmit game input from thecontroller 110 to the cloud server 400 and forward game contentgenerated at the cloud server 400 to the display screen 115 associatedwith the computing device 100 for rendering. In these implementations,all the processing occurs at the cloud server 400.

The game content of the video game returned by the computing device 100are rendered on the display screen 115. The display screen can be atelevision monitor as shown or a screen associated with the computingdevice (not shown) or a screen of a head-mounted display (not shown) oran external display surface (not shown) on which the content can berendered.

The controller 110 is shown to include a pair of handles operable usingboth hands of the user. The type of controller is not restricted to theaforementioned type but can include a single handle operable using asingle hand of a user or a controller without any handles, such as atablet computing device or game pad, for example. The controller 110includes a plurality of control buttons and/or one or more touch screeninterface(s) (e.g., touch input interface) defined one or more surfacesto provide user inputs to the video game (i.e., an interactiveapplication). FIG. 1 shows a view of both a back side 110 a and a frontside 110 b of the controller 110. The back side 110 a of the controller110 shows a first surface (i.e., a back surface) on which a pair ofslots 130 is defined for housing a pair of earbuds 120. The front side110 b shows a second surface (i.e., front surface) of the controller 110on which a plurality of control buttons and touch screen interface aredisposed. The surfaces of the controller 110 on which the controlbuttons and one or more touch screen interfaces are defined are notrestricted to the front surface, but can also include a top surface, abottom surface, side surfaces, and back surface. The user inputs areused to perform an action in the interactive application. The tabletcomputing device represents a controller and includes a touch screeninterface on which control buttons of a physical controller areemulated. The controller 110 is communicatively paired to the computingdevice 100 so that the user inputs provided through the control buttonsand/or touch screen interfaces can be detected and interpreted by thecomputing device 100 to affect game state of the video game. In someimplementations, the pairing can be a high-speed pairing to avoidlatency so that user inputs provided through the control buttons and/ortouch screen interfaces to the computing device 100 and game contentfrom the computing device 100 to the display screen 115 are transmittedin near real-time. A power source is used to charge the controller 110.The power source could be an internal power source, such as a battery112, or an external power source 111. The controller 110 also includesmicrophone/speaker (not shown) to receive voice commands from the userand to render any audio generated during gameplay of the video game. Thevoice commands from the user can be used as user inputs to the videogame or posted as a chat on a chat interface or social media input ontoa social media application interface rendered alongside game contentduring game play of the video game. Similarly, the audio generatedduring gameplay can include game audio as well as chat/social mediaaudio provided by users via the chat/social media application interface.

The pair of earbuds 120 can be included in addition tomicrophone/speaker of the controller 110 to provide audio commandsand/or listen to audio generated during gameplay of the video game. Theearbuds 120 are stored in an earbud case defined on one of the surfacesof the controller 110. The earbud case is defined as a pair of slots onthe back side of the controller 110, in some implementations, and theearbuds 120 are received into the respective slots 130 to fullyintegrate the earbuds 120 with the controller 110.

The controller with the earbud storage integrated within is differentfrom conventional controller. In the conventional controller, there isno storage for the earbuds defined on any surface. Instead, the earbudswere stored separately in an earbud case leading to the user having totrack location of multiple devices, such as the earbuds, the earbud caseand the controller. Further, because the earbuds and the controller areseparate devices, the earbuds and the controller are separatelyconnected to different or same power sources to get charged. As aresult, the user has to separately manage battery life statuses of eachof these devices to ensure that both these devices are sufficiently andtimely charged and ready for game play, when needed. Additionally, theearbuds and the controller are each separately paired to the computingdevice to communicate with the computing device, and the earbuds arealso paired to the controller in order to allow communication andsynchronization between the controller and the earbuds. Consequently,the user has to manage the different pairing processes in addition totracking the separate devices and the battery statuses of each of thesedevices. The user also has to ensure that the communication between thedevices is managed properly.

Thus, in order to avoid duplication of connections, storage, andpairing, and to simplify the tracking of the devices and communicationbetween the devices, the earbuds 120 are integrated into the controller110. A pair of slots 130 is defined on a first surface of the controller110 and a plurality of control buttons and/or one or more touch inputsurfaces are defined on a second surface. In one implementation, thefirst surface is the back side 110 a of the controller 110 and thesecond surface is the front side 110 b of the controller 110. Additionalcontrol buttons can be defined on other surfaces of the controller 110including a top surface, a bottom surface, or one or both lateralsurfaces of the controller 110. The integration of the earbuds 120allows the earbuds 120 and the microphones/speakers of the controller110 to work together, and simplifies the pairing process, tracking ofdevices and managing battery life statuses. The integration also allowsgreater flexibility of directing different audio content generatedduring the execution of the interactive application to differentdevices, thereby enhancing the overall user experience.

The pair of slots 130 is not restricted to be defined on the back side110 a of the controller 110 but can also be defined on other surfaces ofthe controller including the front side 110 b, any one or both thelateral surfaces, the top surface or the bottom surface. In someimplementations, each of the pair of slots 130 is defined to include aspring fit mechanism to receive and secure each earbud 120 into therespective slot 130. The spring fit mechanism is configured to allow theearbud 120 to be pressed into place within the slot 130 so as to besecurely received into the slot 130. For example, the spring fitmechanism is designed to generate a mechanical click in response to afirst press of the earbud 120 aligned over the slot to indicate that theearbud 120 is received properly (i.e., snapped into place) in the slot130. Subsequent press of the earbud 120 would cause the earbud 120 to bereleased from the slot 130 (i.e., pop out of the slot). Other ways toindicate proper receipt of the earbud 120 in the slot 130 can also beemployed. In alternate implementations, the slots 130 can be configuredto be formed using conformal material or include one or more magnets oremploy any other material or mechanism to securely receive the earbuds120 into the respective slots 130. A size and shape of each slot 130 isdefined to accommodate the earbud 120 so that the earbud 120, whenreceived in the slot 130, is flush with the surface (e.g., back side 110a) of the controller 110 on which the slots 130 are defined.

To assist in storing and charging the earbuds 120 when received in theslots 130, in some implementations, each slot 130 includes one or moreslot contacts (132 shown in FIG. 3A) defined in the bottom and coupledto a power source (e.g., internal power source 112 (i.e., battery)) ofthe controller 110. The slot contacts 132 of the controller 110, inturn, connect to one or more metallic conductor elements disposed on theearbuds 120 establishing an electrical metal connection. Each earbud 120is defined by an earbud portion and a narrow tubular portion thatextends down from a bottom surface of the earbud portion for a length.In some implementations, the metallic conductor elements are defined ona bottom surface of the narrow tubular portion of each earbud 120. Theelectrical connection allows the power from the power source (i.e.,external power source 111 or internal power source 112) to flow to theearbuds 120 charging the earbuds 120. Each slot 130 is also coupled to aprocessor 113 of the controller 110 to allow the controller 110 tocontrol communication between the earbuds 120 and the controller 110 andbetween the earbuds 120 and the computing device 100. The pair ofearbuds 120 acts as an external audio source and the microphone/speakerof the controller 110 acts as an internal audio source.

The controller 110 is first paired to the computing device 100 duringinitial setup of the controller 110, and such pairing may be done usinghigh speed connection. The controller 110 can be communicativelyconnected to the computing device 100 using wired or wirelessconnection. After the successful pairing of the controller 110 to thecomputing device 100, the earbuds 120 are paired to the controller 110.The pairing of the earbuds 120 to the controller 110 allows the earbuds120 to share the pairing of the controller 110 to the computing device100 to allow communication between earbuds 120 and the computing device100. The communication of the earbuds 120 with the computing device 100will use the high speed communication connection established by thecontroller 110. In some implementations, the earbuds 120 are connectedto the controller 110 through wireless connection. In someimplementations, the wireless connection may be a proprietary wirelessconnection or any other widely available wireless connection.

The controller 110 with the integrated earbud storage (i.e., slots 130)eliminates the need to have separate earbud case for storing andcharging the earbuds 120. The gaming-centric headset storage issimplified by reducing the number of devices to track as only thecontroller 110 (with the earbuds integrated within) needs to be tracked.The integration of the earbuds 120 to the controller 110 also simplifiesand reduces the number of pairing processes that needs to be done forusing the earbuds 120 to communicate with the controller 110 and thecomputing device 100. In addition to reducing the pairing processes, theintegration improves and simplifies the communication between thedifferent devices. For instance, the pairing is initially done betweenthe controller 110 and the computing device 100 to establish thecommunication connection there-between. After the successful pairing ofthe controller 110 with the computing device 100, the earbuds 120 arethen paired with the controller 110. The pairing of the earbuds 120 tothe controller 110 allows the earbuds 120 to communicate with computingdevice 100 using the already established communication connectionbetween the controller 110 and the computing device 100. The earbuds 120thus tap into the high speed communication connection between thecontroller 110 and the computing device 100 to provide and receive audiocontent. The earbuds can be configured to act as external audio sourceand work cohesively with the internal audio source (microphone/speaker)of the controller. The audio content generated during execution ofinteractive application can be processed, specific one of the audioidentified and isolated using triangulation technique, or certain onesof ambient sound identified and filtered out or enhanced. The processedaudio is forwarded to different devices for rendering, thereby allowingthe user to have an enhanced user experience.

Further, the power from the controller 110 is shared with the earbuds120, thereby eliminating the need to manage two different battery lifestatuses. Only the battery life and/or the power status of thecontroller 110 need to be managed. In addition to addressing theduplication of the pairing, storing and charging of the earbuds 120, theintegration provides greater flexibility by allowing the earbuds 120 andthe microphone/speaker of the controller 110 to be configured to workcohesively to stream different audios to different devices. Theflexibility allows the user to control which ones of audio content tostream to the earbuds for private rendering and which ones of audiocontent to stream to the controller or the computing device/displayscreen for public rendering. The earbuds 120 can be set up and theprocessor 113 of the controller 110 can be configured to stream the chataudio to the different earbuds 120 for private rendering, and the gameaudio to the controller 110 and/or computing device 100 or displayscreen 115 for public rendering. The setting up of the earbuds 120 andthe configuration of the processor 113 of the controller 110 may be doneduring initial setup, for or by the user, and dynamically updated duringor after initial or each use. In some implementation, the earbuds setupand the processor configuration may be user-specific and/or interactiveapplication-specific. More details of setting up of the earbuds 120 andmanaging streaming of different audio will be discussed in detail withreference to FIGS. 2A and 2B.

FIG. 2A illustrates various modules of an earbud setup module 140 usedto set up and manage earbuds 120 integrated with the controller 110, insome implementations. The earbud setup module 140 may be software (i.e.,program instructions) stored in memory 114 of the controller 110 andexecuted by a processor 113 of the controller 110, or may be a firmware.FIG. 2B illustrates additional sub-modules within content streamingconfiguration module 148 of the earbud setup module 140 that can be usedto manage streaming of the different audio content to different devices,in some implementations. Referring simultaneously to FIGS. 2A and 2B,the processor 113 of the controller 110 receives sensor data from one ormore sensors 147 defined on the controller 110. In some implementations,some of the sensors 147 may be embedded inside each slot 130 to detectthe presence of the earbuds in the respective slot. Additional sensorsmay be provided along the opening surface of the slots 130, othersurfaces of the controller 110, and and in the earbuds 120 itself. Thesensor data thus can be used to detect location of the earbud 120,proximity of the earbud 120 to one or more facial features of the user,pairing data related to the controller 110 and the earbuds 120, etc. Thesensor data is received and interpreted by the earbud detection module142 of the earbud setup module 140 to determine at least, (a)identification information of the controller 110 and the earbuds 120,(b) if one or both the earbuds 120 are received in the respectiveslot(s) 130, and (c) if one or both the earbuds 120 are being worn bythe user. The sensor data is provided as input to a pairing module 144of the earbud setup module 140. In addition to the location information,in some implementations, the sensor data may also be used to determinethe battery life statuses of the controller 110 and the earbuds 120.

The pairing module 144 receives the sensor data provided by the earbuddetection module 142 and identifies the controller 110 and the earbuds120 using the identification information. In addition to identifying thecontroller 110 and the earbuds 120, the sensor data is used to determineif the controller 110 is paired to the computing device 100, and if theearbuds 120 are paired to the controller 110. The pairing module 144engages a controller-to-computer device pairing module 144 a to query adatabase (not shown) associated with the controller 110 to determine ifthe controller 110 is already paired to the computing device 100. If thecontroller 110 is not already paired to the computing device 100, thecontroller-to-computer device pairing module 144 a initiates a pairingprocess between the controller 110 and the computing device 100. In someimplementations, the controller 110 is paired to the computing device100 by establishing a high speed communication connection and thepairing information is uploaded to the database. The communicationconnection may be wired or wireless. If, on the other hand, thecontroller 110 is already paired to the computing device 100, thecontroller-to-computer device pairing module 144 a returns the pairinginformation to the pairing module 144.

Once the pairing between the controller 110 and the computing device 100is established/verified, the pairing module 144 then engages anearbud-to-controller pairing module 144 b to verify if the earbuds 120received in the slots 130 are associated with the controller 110, andwhether the earbuds 120 are already paired with the controller 110. Theearbud-to-controller pairing module 144 b queries the database of thecontroller 110 to obtain any earbud information associated with thecontroller 110. If the query returns any earbud information, then theearbud-to-controller pairing module 144 b verifies to see if the earbudinformation returned for the query matches the earbud information of theearbuds 120 received in the slots 130. If no record is returned for thequery, the earbud-to-controller pairing module 144 b initiates thepairing process between the controller 110 and the earbuds 120 receivedin the slots 130. As part of the earbud pairing process, the pairingbetween the controller 110 and the computing device 100 is shared withthe earbuds 120. Thus, by merely pairing the earbuds 120 with thecontroller 110, the earbuds 120 are able to take advantage and make useof pairing between the computing device 100 and the controller 110 forcommunicating with the computing device 100. Upon successful pairing ofthe earbuds 120 with the controller 110, the earbud pairing informationincluding the earbud identification information is updated to thedatabase of the controller 110 for storing and for subsequentverification. If, however, a pairing record detailing pairing of earbuds120 to the controller 110 is returned for the query, the earbudinformation of the earbuds 120 received in the slots 130 of thecontroller 110 is verified against the earbud information received inthe pairing record for the controller 110 for the query. If there is amismatch between the earbud information retrieved from the database andthe earbud information pertaining to the earbuds 120 in the slots 130,the earbud-to-controller pairing module 144 b returns an error messageto indicate that the earbuds 120 received in the slots 130 are notrelated to the controller 110. The error message is returned forrendering on the display screen 115 and the pairing process between theearbuds 120 and the controller 110 ends. If, however, there is a matchin the earbud information retrieved from the database to the earbudinformation of the earbuds 120 in the slots 130, then it indicates thatthe earbuds 120 have already undergone the pairing process to pair withthe controller 110. In such cases, the earbud-to-controller pairingmodule 144 b returns a successful match signal to the pairing module144. Upon successful verification of the pairing between the earbuds 120received in the slots 130 and the controller 110, the pairing module 144forwards the pairing information of the earbuds 120 to a charging module146 of the earbud setup module 140.

The charging module 146 is used to verify if the controller 110 and theearbuds 120 are fully charged and are ready for use for interacting withthe video game, for example. The charging module 146 engages acontroller charging module 146 a that is configured to check the batterystatus of the controller 110 (i.e., charge status to determine if thecontroller 110 is fully charged, partially charged or has no charge).Based on the charge status, the controller charging module 146 a mayeither initiate the charging process to allow the controller 110 to getcharged or return an appropriate signal/message indicating the chargestatus of the controller 110.

Responsive to the charging module 146 receiving the appropriate signal(fully charged or sufficiently (e.g., about 75-90%) charged) from thecontroller charging module 146 a, the charging module 146 engages theearbud charging module 146 b to check the battery status of the earbuds120 received in the slots 130. Based on the charge status (i.e., batterystatus) of the earbuds 120 received in the slots 130, the earbudcharging module 146 b is engaged to either initiate the earbud chargingprocess to charge the earbuds 120 using the power source (111 or 112) ofthe controller 110 or return an appropriate signal/message indicatingthe earbuds 120 are sufficiently charged. It is to be noted that thepairing and the charging processes are initiated for the earbuds inresponse to detecting the earbuds 120 in the slots 130 of the controller110. The detection of the earbuds 120 in the slots 130 of the controller110 can be verified using sensor data provided by the one or moresensors 147 disposed in the slots 130, on the surface of the opening tothe slots 130, on the surface(s) of the controller 110 and on theearbuds 120. For instance, when the earbuds 120 are placed into theslots 130 equipped with a spring-fit mechanism, and pushed into place, amechanical click can occur to indicate that the earbuds 120 have beenproperly received into the slots 130. The occurrence of the mechanicalclick and the sensor data provided by the sensors 147 can be used toconfirm the presence of the earbuds 120 in the slots 130. The mechanicalclick can be a trigger event that can be used to initiate theverification of the pairing and charging of the controller 110 and theearbuds 120.

Upon successful pairing and charging of the controller 110 and theearbuds 120, the earbud setup module 140 engages the content streamingconfiguration module 148 to determine how the audio content generatedduring the game play of the video game is to be streamed. In someimplementations, the earbud setup module 140 engages the contentstreaming configuration module 148 as part of the earbud setup or inresponse to a trigger event. In response to the trigger event, a triggerevent detector 148 a is engaged by the content streaming configurationmodule 148 to evaluate the trigger event to determine if the triggerevent relates to the earbuds 120. The trigger event may occur duringgame play of the video game, for example, and may be triggered inresponse to detecting the user wearing one or both the earbuds 120.Sensor data collected from the sensors 147 disposed in the slots 130, onthe surface of the earbuds, on the surface of the openings of the slots130, and on the surface of the controller 110 are used to verify thelocation of the earbuds 120. The sensor data also provides the detailsof whether only one earbud 120 or both the earbuds 120 are worn by theuser and whether one earbud 120 or both the earbuds 120 are in the slot130. The content streaming configuration module 148 is configured to usethe sensor data and the trigger event data to stream appropriate contentgenerated during the game play of the video game (i.e., interactiveapplication) to the different devices for rendering. The contentstreaming configuration module 148 first determines the different audiocontent generated during the game play of the video game. As noted, theaudio content can include game audio, chat audio (i.e., social mediaaudio), and voice input. The game audio is audio generated by game logicand provided for rendering during game play. The chat audio is providedby other users on a chat interface rendered alongside the game content.The voice input is generated by the user and can include input commandsto affect the game state of the video game or can be chat audio forrendering on the chat interface.

The content streaming configuration module 148 can identify, isolate,and extract select ones of the audios generated during game play andstream the select ones of the audio content to the appropriate devices.The audio content generated during game play includes game audio, chat(i.e., social media) audio, voice inputs, to name a few. Each of thecomputing device 100, the controller 110, the display screen 115 and theearbuds 120 can include microphones and speakers embedded within orassociated with them to render and receive the audio content during gameplay of the video game. In some implementations, the configuration ofthe various devices may be provided by device manufacturers and can bedynamically updated by a user during use of the devices. In alternateimplementations, the configuration of the various devices can becontrolled by the user and dynamically updated during use. User inputsprovided at or for updating the configuration of the different devicesare received, interpreted and used to update the configuration of therespective devices. In some implementations, the configuration of thevarious devices can be device-specific, user-specific and/or interactiveapplication specific.

In some implementations, during the initial setup (i.e., during pairing)of the various devices, the devices may be configured to receive thegame audio stream at the controller 110 or the computing device or thedisplay screen 115 for rendering through the associated speaker(s)(i.e., the game audio being rendered for public consumption). Theearbud(s) 120 may be configured to receive chat audio stream forrendering via the speakers of the earbuds 120 upon detecting a user iswearing the earbud(s) 120 (i.e., the chat audio being rendered forprivate consumption of the user) during game play of the video game.When the user is not wearing the earbuds 120, then the chat audio can beconfigured to be streamed to the controller 110, computing device 100 orthe display screen 115 for rendering through the respective speakers. Inthis case, the device to which the chat audio is streamed might bedifferent from the device to which the game audio is streamed.

In some implementations, the earbuds can be configured differently forsingle earbud use and dual earbud use. In some implementations, theearbuds 120 are configured such that when the user is wearing only oneearbud 120, the chat audio is streamed to that earbud 120, and when theuser is wearing both the earbuds, the chat audio is streamed to both theearbuds 120. In the case where the user is wearing both the earbuds andthe chat audio is being streamed to both the earbuds 120, when the usershares one of the earbuds (either left earbud 120-L or right earbud120-R) with a second user, then the audio content streamed to theearbuds 120 are updated such that the earbud (120-L or 120-R) sharedwith the second user is configured to receive the game audio and theearbud (120-R or 120-L) worn by the user is configured to receive thechat audio. This configuration allows the user to continue to enjoy thechat audio privately while dynamically switching the chat audio to thegame audio forwarded to the earbud shared with the second user.Alternately, the audio content streamed to the earbud shared with thesecond user can continue to stream the chat audio so that both the userand the second user can listen to the chat audio. In alternateimplementations, when the user is wearing both the earbuds 120, both theearbuds 120 may be configured to render the game audio. In such case,when the user shares one of the earbuds (either 120-L or 120-R) with thesecond user, both the earbuds (120-L, 120-R) can be configured toreceive and render the game audio so that the user and the second usercan enjoy the game audio.

The content streaming configuration module 148 can obtain theconfiguration of the computing device 100, the controller 110, thedisplay screen 115 and the earbuds 120, from the initial setup of eachof these devices and direct the audio content accordingly. Once theconfiguration of the various devices have been completed, the contentstreaming configuration module 148 identifies, extracts, and streamsappropriate audio content generated during the game play of the videogame to the different devices. For example, earbud related input isidentified, extracted and forwarded to the appropriate earbuds or thecontroller 110/computing device 100 using the earbud related inputmodule 151. Similarly, the game related input is identified, extractedand forwarded to the controller 110 or the computing device using thegame related input module 156, and the chat/social media related inputis extracted and forwarded to the display screen 115 using thechat/social media related input module 157 for rendering.

FIG. 2B illustrates the various sub-modules of the content streamingconfiguration module 148 that are used to identify, extract and forwardappropriate audio content to the different devices, to the video game toaffect the game state, and to a social media interface for rendering. Atrigger event detector 148 a is engaged to detect and analyze anytrigger event generated during game play of the video game. The triggerevent can be generated in response to an input received from the user,or in response to input from the video game providing game content, orin response to chat content received from the chat interface. The usercan provide inputs to select and adjust configuration of either one orboth the earbuds or to provide voice inputs, wherein the voice inputscan be voice command to affect an outcome of the video game, or chat orsocial media content for posting on a chat or social media interfacethat is rendering alongside the video game. Based on the analysis, thecontent from the video game or input from the user is processed by thedifferent sub-modules of the content streaming configuration module 148.

The input is processed by the input detection module 150 to identify thesource and the context of the input and classify the input so as to takeappropriate actions. The input can be one or more finger taps at theopening of a slot (130-L or 130-R) and the input can be processed by theinput detection module 150 to interpret the input as a selection actionof an earbud (120-L or 120-R) received in said slot. Additionally, thefinger taps at the slot can be interpreted to determine presence orabsence of the earbud in the slot and trigger a pairing action or acharging action. Alternately, the finger taps at the slot can beinterpreted as a selection of the earbud associated with the slot forforwarding specific one of audio content. Similarly, the input can bebutton presses on the controller 110 and the input can be interpreted toperform specific actions at the interactive application based on theactions configured for each button selected. The input can be broadlyclassified into earbud related input, game related input, andchat/social media related input. The earbud related input can includeinput received for rendering, for forwarding or for configuring theearbuds. For example, the user input can be provided using the one ormore control buttons and/or touch screen interface of the controller110, or using the microphones of the earbuds, or at the surface of theopenings to the slots 130. The earbud configuration input detector 152is engaged to process the configuration related input. For example,selection of one or both earbuds 120 (e.g., left or right earbud (120-L,120-R)) is detected by earbud selection detector 152 a, and input toadjust the streaming, volume, sensitivity, or other configurationsettings of the selected earbud(s) is processed by the earbudconfiguration adjustment module 152 b. A visual indication of selectionof the particular earbud may be provided to the user by lighting up theappropriate slot (e.g., right or left slot (130-L, 130-R)) associatedwith the selected earbud(s) at the controller 110 or rendering an imageof the selected earbud(s) 120 on the display screen 115, or providinghaptic feedback on the relevant side of the controller 110, etc. Theearbud related input can be provided at any time before, during or afterthe game play of the video game, for example, and the configurationsetting adjusted for the earbud(s) 120 for subsequent use of theearbud(s) 120.

The earbud content selection module 153 is engaged to identify theappropriate audio content that is to be streamed to each earbud 120 forrendering, based on the earbuds' configuration and based on whether theuser is wearing one or both earbuds 120. As shown in FIG. 2B, theearbud(s) 120 can receive game audio provided by the game content module156 c or chat audio provided by the chat content module 157 c forrendering through speakers defined in each earbud 120. Additionally, theearbuds can include microphones to receive voice input/commands from theuser wearing the earbuds 120 and provide the same as input to the videogame or to the chat/social media interface for posting. Thus, based onthe configuration setting of the earbuds 120 and upon detecting the userwearing one or both earbuds on their ears, the game audio or the chataudio is rendered to the one earbud (120-L or 120-R) or both earbuds120. A single earbud content streaming module 154 is activated when theuser is detected to be wearing only one earbud 120. The detection of theuser wearing only one earbud can be determined from sensor data thatprovides data related to the presence or absence of the earbud 120 inthe corresponding slot 130 and the proximity of the earbud to one ormore facial features of the user. Based on the configuration setting ofeach earbud 120, the game content or the chat content is selectivelyextracted and streamed to the appropriate earbud by the single earbudcontent streaming module 154. If the user is wearing only the leftearbud 120-L and the configuration setting indicates that the leftearbud 120-L is to receive and render only the chat audio, the leftearbud content module 154 a is engaged to activate the speaker(s) of theleft earbud 120-L and the single earbud content streaming module 154extracts and forwards the chat audio for rendering via the left speaker.Similarly, if the user is detected to be wearing only the right earbud120-R and the configuration setting indicates that the right earbud120-R is to receive only the game audio, the right earbud content module154 b is engaged to activate the speaker(s) of the right earbud 120-Rand the single earbud content streaming module 154 extracts and forwardsthe game audio for rendering via the right speaker.

A dual earbud content streaming module 155 is activated when the user isdetected to be wearing both the earbuds 120. As with the single earbudcontent streaming, based on the configuration setting of each earbud120, the game audio or the chat audio is selectively extracted andstreamed to the appropriate earbud 120 (e.g., 120-L for game audio and120-R for chat audio). Thus, based on the configuration setting, dualearbud content streaming module 155 receives and renders only the chataudio to the left earbud 120-L and only the game audio to the rightearbud 120-R, or the chat audio to both the earbuds (120-L, 120-R) orthe game audio to both the earbuds (120-L, 120-R).

Similarly, a game related input module 156 is used to identify thesource and the type of input generated for or by the game (i.e.,interactive application). The game related input can be provided via thecontrol buttons, or touch screen interface of the controller 110 or canbe voice commands provided through the microphone of the controller 110,or voice input provided by the user through the microphones of thecontroller 110 or the earbuds 120. Alternately, the game input can begame content generated by the video game, in response to the inputsprovided by the user (for a single-user game) or a plurality of usersincluding the user (for a multi-user game). The game related input caninclude text input, voice input, control button and/or touch screeninput provided by the user, as well as content generated by the videogame, such as video content, audio content, haptic content, etc. Thevoice input module 156 a is used to detect and process the voice inputand forward the processed voice input to the game logic as game input toaffect the game state of the video game. Similarly, input providedthrough the controller 110 (i.e., through control buttons or touchscreen (input) interface) is processed by the controller input to gamemodule 156 b and forwarded to the game logic as game input to affect thegame state of the video game. The game logic updates the game state ofthe video game using the inputs and generates game content. Thegenerated game content includes at least the audio portion and the videoportion. The audio portion is extracted and forwarded to the earbudcontent selection module for rendering at the respective earbuds 120 orto the controller content streaming module 158. The audio portion can berendered via the speakers of the controller 110 or can be forwarded tothe computing device for rendering through the speakers associated withthe computing device 100 or the display screen 115. The video portion ofthe game content is forwarded to the display screen 115 for rendering.

The chat/social media related input module 157 is used to detect contentgenerated for rendering at a chat or social media interface or forproviding to a user. The chat related input can include voice inputprovided by the user through the microphones of the earbuds 120 or thecontroller 110, or textual or other controller input provided by theuser using the control buttons, and/or touch screen interface of thecontroller 110. The voice input module 157 a of the chat/social mediarelated input module 157 is used to detect and process the voice inputand forward the processed voice input to the social media posting module159 for posting as chat audio on a chat/social media interface. Chatcontent provided by other users can be similarly processed by thechat/social media related input module 157 to extract the chat audioincluded in the chat content and forward the chat audio to one or boththe earbuds 120 for rendering, based on the configuration of the earbuds120. The chat related controller input is similarly processed using thecontroller input to social media/chat interface module 157 b andforwarded to the social media posting module 159 for posting on thechat/social media interface.

As previously noted, the various modules of the earbud setup module 140shown in FIGS. 2A and 2B and the content streaming configuration module148 of FIG. 2B, the controller 110 with the integrated earbuds 120 is aself-contained, versatile device that simplifies the pairing, charging,the communication processes and reduces number of devices for trackingthe location and battery statuses. Further, the earbuds 120 can use thehigh speed communication connection established between the controllerand the computing device for communicating with the computing devicethereby providing a low-latency communication between the earbuds andthe computing device.

FIGS. 3A-3E illustrate the various orientations and locations of theslots for the earbuds defined on the controller, in someimplementations. FIG. 3A illustrates a back side of the controller onwhich the slots for the earbuds are defined. As shown, a left slot toreceive a left earbud and a right slot for receiving a right earbud aredefined on the back side of the controller proximate to a top surface.Metal contacts (i.e., slot contacts) are defined in the portion of eachslot where the bottom of the narrow tubular portion of each earbud isreceived. The bottom of the narrow tubular portion of each earbudincludes metallic conductor elements that contact the slot contactsdefined in each slot, when the earbud is received in the respectiveslot. The slot contacts of each slot are coupled to a power source, suchas the battery or an external power source, of the controller. The slotsare also coupled to a processor of the controller to execute programinstructions stored in memory. The program instructions are configuredto allow the processor to detect, pair and charge the earbuds receivedin the slot and to direct specific ones of audio content generatedduring execution of an interactive application at the computing devicecommunicatively coupled to the controller. The slots for the earbuds areoriented sideways. Thus, in a first configuration illustrated in FIG.3A, the slots to store the earbuds are defined at slot location 1 (i.e.,proximate to the top surface) and have a slot orientation 1 to receivethe earbuds at earbud orientation 1.

FIG. 3B illustrates the front side of the controller, in someimplementations, on which a plurality of control buttons and one or moretouch screen interfaces are disposed. Some of the control buttons thatmay be disposed include Trigger buttons, bumpers, directional pad withappropriate buttons to provide directional inputs, analog sticks, aguide button, a headphone jack 160 for wired connection, buttons toprovide options, start, share, back button, and/or additional controlbuttons (162, 164-L, 164-R, 166 a-d, 161-R, 161-L) to provide additionalinputs. The controller also includes a touchpad (i.e., a touch screeninterface) 168 for providing inputs using finger presses and fingerslides. It noted herein that the control buttons and the touch screeninterfaces shown in FIG. 3B can be typical buttons/touch inputinterfaces that are included in any type of controller used to provideinputs to interactive applications.

FIG. 3C illustrates a second configuration for defining the slots thatis different from the configuration illustrated in FIG. 3A, in somealternate implementations. In these implementations, the slots and theearbuds received therein are defined at slot location 1, have a slotorientation and earbud orientation 2, which are perpendicular to the topsurface.

FIG. 3D illustrates a third configuration for defining the slots that isdifferent from the configuration illustrated in FIGS. 3A and 3C, in somealternate implementations. In these implementations, the slots and theearbuds received therein are defined at slot location 1, and have slotorientation and earbud orientation 3, which are perpendicular to the topsurface. The orientation of the slots 130 and the earbuds 120 in FIG. 3Dare opposite to what is shown in FIG. 3C.

FIG. 3E illustrates a fourth configuration for defining the slots thatis different from the slot configurations illustrated in FIGS. 3A, 3Cand 3D, in some implementations. In these implementations, the slots aredefined at location 4 along an outer edge of the lateral sides of thecontroller such that the bottom of the slot is defined to align with theouter edge of the lateral sidewalls. The slots 130 and the earbuds 120have a slot orientation and earbud orientation 1. It is to be noted thatthe location and orientation of the slots (i.e., slot configuration) forreceiving the earbuds are provided as mere examples and should not beconsidered restrictive and that other orientations, surfaces, andlocations can also be envisioned.

It should be noted that the computing device can communicate with thecontroller and with other computing devices that are located remotely orare part of a cloud gaming site over a network, which can include localarea network (LAN), wide area network, cellular network (e.g., 4G, 5G,etc.,) or any other type of data network, including the Internet 300 andsuch communication can be through wired or wireless connection.Embodiments of the present disclosure may be practiced with variouscomputer system configurations including hand-held devices,microprocessor systems, microprocessor-based or programmable consumerelectronics, minicomputers, mainframe computers, mobile devices, and thelike. Embodiments of the present disclosure can also be practiced indistributed computing environments where tasks are performed by remoteprocessing devices that are linked through a wire-based or wirelessnetwork. One or more embodiments can also be fabricated as computerreadable code on a computer readable medium. The computer readablemedium can include computer readable tangible medium distributed over anetwork-coupled computer system so that the computer readable code isstored and executed in a distributed fashion.

Although the foregoing embodiments have been described in some detailfor purposes of clarity of understanding, it will be apparent thatcertain changes and modifications can be practiced within the scope ofthe appended claims. Accordingly, the present embodiments are to beconsidered as illustrative and not restrictive, and the embodiments arenot to be limited to the details given herein, but may be modifiedwithin the scope and equivalents of the appended claims.

It should be understood that the various embodiments defined herein maybe combined or assembled into specific implementations using the variousfeatures disclosed herein. Thus, the examples provided are just somepossible examples, without limitation to the various implementationsthat are possible by combining the various elements to define many moreimplementations. In some examples, some implementations may includefewer elements, without departing from the spirit of the disclosed orequivalent implementations.

1. A controller used to provide inputs to an interactive application,comprising: a first surface with a pair of slots defined thereon, eachslot of the pair of slots configured to store an earbud, wherein eachslot is coupled to a power source of the controller to charge saidearbud when received in each slot in said pair of slots; a plurality ofcontrol buttons and one or more touch input surfaces defined on one ormore surfaces of the controller, wherein the one or more surfacesincludes said first surface, each of the plurality of control buttonsand each of the one or more touch input surfaces configured to providean input for performing an action in the interactive application; and aprocessor coupled to each of the slots and configured to execute programinstructions to pair the earbud received therein to the controller andto charge the earbud using the power source of the controller, thepairing of the earbud allows the earbud to share a pairing between thecontroller and a computing device executing the interactive applicationto communicate with the computing device.
 2. The controller of claim 1,wherein each slot includes one or more sensors to detect presence ofsaid earbud in said slot, wherein the one or more touch input surfacesincludes a touch input surface defined on a surface of an opening ofeach slot, the touch input surface at the opening equipped with one ormore sensors to detect user input, and wherein the processor isconfigured to detect a user input at the touch input surface of theopening and interpret the user input to perform an action associatedwith the earbud, wherein the action is a pairing action, or a chargingaction, or forwarding action directing audio content to said earbud forrendering.
 3. The controller of claim 1, further includes memory tostore the program instructions executed by the processor of thecontroller.
 4. The controller of claim 1, wherein the pair of slots isdefined such that a size and a shape of each slot in said pair isdefined to allow the earbud, when received therein, to fit within saidslot and be flush with the first surface.
 5. The controller of claim 1,wherein each slot includes one or more metal contacts that are coupledto the power source of said controller, each earbud of the pair includesmetallic conductor elements to connect with the one or more metalcontacts in respective slot, when said earbud is received in said slot,said connection allowing the earbud to receive power from said powersource of the controller and get charged.
 6. The controller of claim 1,wherein each slot is equipped with a spring-fit mechanism for aligningand securely holding the earbud in said slot, and wherein the spring-fitmechanism is configured such that a first press of the earbud, when theearbud is aligned over said slot, causes the earbud to snap into placewithin the slot and a second press of the earbud causes the earbud topop out of the slot.
 7. The controller of claim 1, wherein said pairingbetween said controller and said computing device is a high speedcommunication connection, and each earbud of the pair adopts the highspeed communication connection of the controller to communicate with thecomputing device, and wherein each earbud of the pair is coupled to thecontroller using wireless connections.
 8. The controller of claim 1,wherein audio generated during execution of the interactive applicationincludes any one or combination of interactive audio content and chatcontent received from said interactive application, and voice inputsreceived from user wearing one or more earbuds of the pair, and whereinsaid program instructions are configured to selectively extract anddirect specific ones of said audio to one or both earbuds of the pair,or to the controller or to the computing device for rendering.
 9. Thecontroller of claim 8, wherein said program instructions are configuredto direct said interactive audio content generated during execution ofthe interactive application to a first earbud and said chat contentgenerated during execution of the interactive application to a secondearbud.
 10. The controller of claim 8, wherein said program instructionsare configured to direct said interactive audio content generated duringexecution of the interactive application to the controller and said chatcontent to one or both earbuds of the pair for rendering.
 11. Thecontroller of claim 8, wherein said program instructions are configuredto process the audio content generated during execution of theinteractive application to identify, extract and transmit voice inputsto the interactive application to affect state of the interactiveapplication or to a chat interface to post the voice inputs as chats.12. The controller of claim 1, wherein each earbud of the pair includesa speaker to render audio generated during execution of the interactiveapplication.
 13. The controller of claim 12, wherein each earbud of thepair includes a microphone to receive voice inputs from a user wearingthe earbuds and to transmit the voice inputs to the controller, whereinthe processor of the controller is configured to process the voiceinputs and transmit to the computing device for rendering as inputaudio.
 14. The controller of claim 1, wherein said first surface of thecontroller is a back side of the controller, and wherein said one ormore surfaces includes a front side, one or more lateral sides and theback side of the controller.
 15. The controller of claim 1, wherein saidfirst surface of the controller is a lateral side of the controller, andwherein said one or more surfaces includes the front side, one or morelateral sides and a back side of the controller.
 16. The controller ofclaim 1, wherein the controller includes one or more microphones and oneor more speakers embedded therein, said one or more microphones and saidone or more speakers coupled to said power source and to the processorof the controller.
 17. The controller of claim 1, wherein saidcontroller is coupled to the computing device via wired or wirelessconnection.
 18. The controller of claim 1, wherein the controllerincludes one or more handles for holding the controller when providinginputs to said interactive application.
 19. A system for executing aninteractive application, comprising: a computing device for executing aninstance of the interactive application, the interactive applicationgenerating streaming content for rendering, the streaming contentincluding at least an audio portion and a video portion; a displayscreen associated with the computing device for rendering the videoportion of the streaming content; a controller for providing inputduring execution of the interactive application, the controllerincluding, a first surface with a pair of slots defined thereon, eachslot of the pair of slots configured to store an earbud, wherein eachslot is coupled to a power source of the controller to charge saidearbud received therein, wherein said power source is used to charge thecontroller; a plurality of control buttons and one or more touch inputsurfaces defined on one or more surfaces of the controller, wherein theone or more surfaces includes said first surface, each of the pluralityof control buttons and each of the one or more touch input surfacesconfigured to provide an input for performing an action in theinteractive application; a memory to store program instructions forsetting up earbuds stored in said pair of slots; and a processor toexecute said program instructions retrieved from memory for setting upthe earbuds.
 20. The system of claim 19, wherein the programinstructions are configured to, detect presence of said earbud in a slotof the pair of slots; initiate charging of the earbud using the powersource of the controller; verify the controller is paired with thecomputing device; initiate a pairing of the earbuds with the controller,the pairing of the earbuds allowing the earbuds to share the pairing ofthe controller with the computing device to communicate with thecomputing device, upon successful pairing of the earbuds with thecontroller; detect presence of said earbud on the user; and identify,extract and stream select ones of the audio portion of the streamingcontent to said earbud, based on configuration of said earbud.